An SAS expander (hereinafter, an expander) which enables on/off of a buffer to be configured is known. Buffer-on signifies that a buffer function is in an on state. When buffer-on is configured, the expander performs buffering. Buffer-off signifies that the buffer function is in an off state. When buffer-off is configured, the expander does not perform buffering. The expander includes a plurality of ports (phy) and enables on/off of the buffer to be configured for each port.
It is also known that transfer rates of expanders include an old standard and a new standard. A transfer rate conforming to the old standard is generally 6 Gbps and a transfer rate conforming to the new standard is generally 12 Gbps. Both a new standard-compliant storage device (hereinafter, a high-speed storage device) and an old standard-compliant storage device (hereinafter, a low-speed storage device) can be coupled to a new standard-compliant expander.
In a new standard-compliant expander, a port to which a low-speed storage device is coupled is favorably configured to buffer-on. This is because a transfer rate of the low-speed storage device is lower than that of the new standard-compliant expander and, therefore, high-speed transfer cannot be performed. On the other hand, in a new standard-compliant expander, a port to which a high-speed storage device is coupled is desirably configured to buffer-off. This is because, when buffering is performed despite being capable of high-speed transfer, the buffering may cause a decline in performance.
PTL 1 discloses dynamically switching a buffer on/off. According to PTL 1, when a conflict occurs during I/O (Input/Output) to/from a high-speed storage device, a port coupled to the high-speed storage device is configured to buffer-on. Therefore, data can be temporarily stored in a buffer of an expander during an I/O conflict and, after the I/O conflict is resolved, the data can be transferred to a high-speed storage device from the buffer of the expander. Accordingly, time loss of data transfer can be reduced.